Watching a broadcasted documentary, news program, movie etc., on a device such as a television might be a desired experience, in particular when additional or supplementary information is shown on the same or another device.
In e.g. a broadcasted cooking program food is prepared as shown on a wall mounted television and at the same time a recipe with the amounts of ingredients is shown on another handy device, such as a tablet or smart-phone is shown, to allow a watching person e.g. to store the recipe for later use, to receive a voucher/token for reduced price, to receive information on the equipment used, etc. Additionally an application on the tablet or mobile phone might apply the stored recipe for ordering the ingredients at a nearby store.
In the example above, a tight synchronization between the broadcasted cooking program and the presented recipe is desirable but not a strict requirement.
In other examples there is however a tight synchronization required between the broadcasted media and the supporting media. E.g. when a hearing impaired person applies the supporting media to read the text, presented on a tablet or smart-phone, while watching a broadcasted or played-out recorded presentation, or when the list of ingredients is followed on a separate screen as they are being used by the cook.
Strict synchronization is even more required when a broadcasted or played-out recorded media stream and a supporting media stream are presented on the same device. E.g. a local generated advertisement-clip media stream is scheduled to fit in a time-gap or interrupts of a broadcasted media stream presentation, requiring an exact corresponding begin and end of both streams.
Strict synchronization is also required in cases where corresponding to a broadcasted media stream, certain equipment in the home environment has to be controlled, e.g. switched into a specific mode, or certain settings have to changed in relation to the broadcasted media stream and the supplemental media stream.
Strict synchronization is even more required in cases where an interactive broadcast comprising at least two media streams are provided to an end-user. The ability to synchronize media streams is essential as to provide a seamless interactive experience.
Prior art has presented solutions for synchronizing different media streams.
As an example publication WO 2012/154541 A1 titled “Broadcast-initiated delivery of auxiliary content using triggers”, is presented.
This document describes, with reference to FIG. 1, a method and system 1 for synching of auxiliary (or supplementary) content related to primary content being transmitted by receiving a play-out list, and transmitting primary content to a primary screen device in accordance with play-out list, and transmitting event data to a server.
The document discloses the synchronization of auxiliary content from a server 100 with primary content from a broadcaster or content owner. The play-out center/broadcaster 100, in a general sense, represents a facility where content is transmitted from such a location and such content can be transmitted to a service provider that can be a satellite, cable, telecommunication, mobile or over the air terrestrial broadcaster for transmission to a device such as a television 110 (or any other primary screen in the home). The auxiliary content resides on a server 120 for delivery to a consumption or second screen device 130, 140 through a communication network or broadband connection and to be synchronized with the viewing of the content on the main screen
As a further example of solutions for synchronizing different media streams, publication US2008/0297654 A1, titled “Script synchronization by watermarking”, is presented.
This document describes a synchronizing method of content stream and script for use in e.g. home entertainment system, involves retrieving script corresponding to content and clock value extracted from watermark embedded into the content stream.
The method presented involves embedding the watermark including clock value that relates to time of embedding the clock value and initial clock value representing the start of the content stream, into the content stream. Each clock value is extracted from each embedded watermark. The script representing sensory effects to be output in effects signal for an effects controller, is retrieved corresponding to the content and extracted clock value.
The method presented is used for synchronizing content stream such as MPEG and MP3 content acquired over a broadcast channel, internet and recorded on DVD and script related to perceptual elements, for developing dramatic effects such as light, sound and other effects in home entertainment system, and in video games.
Synchronizing media streams that are generated by different sources, possibly following different routes to device or devices which are expected to present the streams in a synchronized way is a challenge. Solutions are considered to cope with several problems, e.g.:
When two or more media streams, originated by different sources, destined for a single receiver, follow different routes (cable, satellite, Internet), each having its own delays or isochronicity characteristics, it is likely that a non-synchronized presentation at the receiver occurs.
When using different paths, one path may be more vulnerable to disturbances than the other, e.g. when deploying an audible path for transmitting watermarks in the broadcasted stream, this audible path is regarded sensitive to disturbance by environmental audio components, such as background noise, acoustical characteristics of the path, microphone and speaker transmission characteristics, etc.;
using the video or audio components for synchronization purposes, based on a watermarking principle, will degrade the original video or audio components;
using video or audio components for synchronization purposes based on fingerprinting techniques require substantial correlation calculations for a reliable synchronization, and last but not least,
a solution should also work where rebroadcasting or time-shifting techniques are deployed. Also when parts of a broadcast are skipped, the synchronization between the streams must be maintained.